//
// Created by MI T on 2024/8/12.
//

#ifndef UVCCAMERA_CAMERAPARAMETERSTATE_H
#define UVCCAMERA_CAMERAPARAMETERSTATE_H

#endif // UVCCAMERA_CAMERAPARAMETERSTATE_H

#define AUTO_EXPOSURE 1     // 自动曝光开关
#define EXPOSURE 2          // 曝光度
#define BRIGHTNESS 3        // 亮度
#define CONTRAST 4          // 对比度
#define GAIN 5              // 增益值
#define SATURATION 6        // 饱和度
#define ZOOM 7              // 缩放
#define DISPLAY_TRANSFORM 8 // 预览方向


#define DEFAULT_PREVIEW_WIDTH 640
#define DEFAULT_PREVIEW_HEIGHT 480
#define DEFAULT_PREVIEW_FPS 30
#define DEFAULT_PREVIEW_MODE UVC_FRAME_FORMAT_YUYV

#define UVC_FORMAT_YUY2 0
#define UVC_FORMAT_MJPEG 1
#define UVC_FORMAT_NV12 2
#define UVC_FORMAT_RGB 4
#define UVC_FORMAT_BGR 5


#define UVC_DATA_FORMAT_BGR 0
#define UVC_DATA_FORMAT_NV21 1
#define UVC_DATA_FORMAT_RGBA 2

/// 通过下面参数可组合镜像方式+旋转角度
#define TRANSFORM_IDENTITY 0          // 不做变化
#define TRANSFORM_MIRROR_HORIZONTAL 1 // 水平镜像
#define TRANSFORM_MIRROR_VERTICAL 2   // 垂直镜像

#define TRANSFORM_ROTATE_90 3  // 旋转90度
#define TRANSFORM_ROTATE_180 4 // 旋转180度
#define TRANSFORM_ROTATE_270 5 // 旋转270度

#define TRANSFORM_FLIP_H_ROTATE_90 6  // 旋转90度+水平镜像
#define TRANSFORM_FLIP_H_ROTATE_180 7 // 旋转180度+水平镜像
#define TRANSFORM_FLIP_H_ROTATE_270 8 // 旋转270度+水平镜像

#define TRANSFORM_FLIP_V_ROTATE_90 9   // 旋转90度+垂直镜像
#define TRANSFORM_FLIP_V_ROTATE_180 10 // 旋转180度+垂直镜像
#define TRANSFORM_FLIP_V_ROTATE_270 11 // 旋转270度+垂直镜像